package com.cgwx.tmservice.service.impl;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.cgwx.tmservice.entity.tm.TmInfoHisList;
import com.cgwx.tmservice.entity.tm.TmInfoLogList;
import com.cgwx.tmservice.service.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

/**
 * @author GaoWei
 * @Date 2023/8/30 - 17:51
 */
@Service
public class TmInfoDateTableServiceImpl implements TmInfoDateTableService {

    @Autowired
    private TmInfoLogListService tmInfoLogListService;
    @Autowired
    private TmInfoHisListService tmInfoHisListService;
    @Autowired
    private TmInfoLogDateService tmInfoLogDateService;
    @Autowired
    private TmInfoHisDateService tmInfoHisDateService;

//    创建每天的遥测原码表
    @Override
    public void createTmInfoLogDateTable(String tmInfoLogDateTableName) {
//        根据文件名检查是否存在同名遥测原码表
        QueryWrapper<TmInfoLogList> queryWrapper = new QueryWrapper<>();
        queryWrapper.eq("tableName",tmInfoLogDateTableName);
        int isExist = tmInfoLogListService.count(queryWrapper);
        if(isExist == 0){
//            不存在当前遥测原码表，需要创建遥测原码日期记录表
            int isCreate = tmInfoLogDateService.createTable(tmInfoLogDateTableName);
//            表名记录到TmInfoLogList表中
            TmInfoLogList tmInfoLogList = new TmInfoLogList();
            tmInfoLogList.setTableName(tmInfoLogDateTableName);
            tmInfoLogListService.save(tmInfoLogList);
        }
    }

//    创建每天的遥测解析表
    @Override
    public void createTmInfoHisDateTable(String tmInfoHisDateTableName) {
//        根据文件名检查是否存在同名遥测解析表
        QueryWrapper<TmInfoHisList> queryWrapper = new QueryWrapper<>();
        queryWrapper.eq("tableName",tmInfoHisDateTableName);
        int isExist = tmInfoHisListService.count(queryWrapper);
        if(isExist == 0){
//            不存在当前遥测解析表，需要创建遥测解析日期记录表
            int isCreate = tmInfoHisDateService.createTable(tmInfoHisDateTableName);
//            表名记录到TmInfoHisList表中
            TmInfoHisList tmInfoHisList = new TmInfoHisList();
            tmInfoHisList.setTableName(tmInfoHisDateTableName);
            tmInfoHisListService.save(tmInfoHisList);
        }
    }
}
